<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>高度塌陷最终方法</title>
    <style>
        .box1{
            border: 10px red solid;
            /* overflow: hidden; */
        } 

        .box2{
            width: 100px;
            height: 100px;
            background-color: #bfa;
            float: left;
        }

        /* box3把box1撑起来的 但这种方式是在html里解决问题的，即 CSS显示问题由Html通过结构的方式解决，不太好 */
        .box3{
            clear:both;
        }

        /* 最终使用CSS方式创建一个元素 after默认是行内元素，需要改为块元素 清除浮动 设置内容为空*/
        .box1::after{ 
            display: block;
            clear: both;
            content: '';
        }

    </style>
</head>
<body>
    <div class="box1">
        <div class="box2"></div>
        <!-- <div class="box3"></div> -->
    </div>
</body>
</html>